﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BioinformaticAlgoritms2014;
using BioinformaticAlgoritms2014.Rosalind;

namespace SampleConsoleProject
{
    internal class Program
    {
        private static void Main(string[] args)
        {
            var sequence = new DNASequence(seq2);
            //var rna = new RNASequence(seq2);
            //Console.WriteLine(rna.TranslateToAminoAcidSeq());
            //var strings = sequence.GetPeptideSubstring("YNHIGSMWVY");
            //foreach (var s in strings)
            //{
            //    Console.WriteLine(s);
            //}
            Console.WriteLine(new MassSpectrometryAnalize().GetCyclospectrum("SKASCWMSHTVPLT").ToCustomString());

            //Console.WriteLine(Extensions.HammingDistance("CAGAAAGGAAGGTCCCCATACACCGACGCACCAGTTTA", "CACGCCGTATGCATAAACGAGCCGCACGAACCAGAGAG"));
            // Console.WriteLine(Extensions.GetNeighborhoodPatterns("TAGC", 3).ToCustomString());

            // Console.WriteLine(sequence.GetSkew().ToCustomString());
            // Console.WriteLine(sequence.GetFrequentWords(10,2,true).ToCustomString());
            //Console.WriteLine(sequence.Find(4,30,3).ToCustomString());
            //Console.WriteLine(sequence.GetPatternCount("TGT",1));
            //Console.ReadKey();
            //Console.WriteLine(Test.Iprb(21,26,26));
            Console.ReadKey();
        }

        private const string seq = "ATGGCCATGGCCCCCAGAACTGAGATCAATAGTACCCGTATTAACGGGTGA";
        private const string seq2 = "TGGCGAGCCAGAGCTGGCTAAGTCCACTGTGCAGCGTGCTCTCGAGTCATTCCCCGGTGGAACAAACGAGAGACAACCTCATTCGGCGTTCTCGTAGCAGATTAACTGCACTCCGAAAACACCAGGCTAGGAATGGCCTCCTACCCAGGCATTCCACGAGCAATTTGGCTACCGGGCGGGGACACGGATGTATGGTGATAGGCTTTGAACAATCTAAGAGCGTCCCCGGGGCCAGACGAACACAAGCATGATACCCATGAAAGCTCCTTGTCAGGAGCGACCATTTAGATCCTACGTGAGTCTGTCACCTTGTCAGTCATCCACTCGGGCGAACGCTACTCATTTAGTAACGTACGGATATCCAGAAGTTTGTTTAGACGCTTCGCTGTTAGGTCGACTGCGGGAAGAATACTAGCGTGGACAACATTAGCCGATAATACAACCACATTGGATCCATGTGGGTATACAAGTTCCGTATCAGGCGCACTTAAAACGCTGGGTTAATAAAGGGTGACAGTTAGCCTAAGGCACCTCCGGATACTCTCTCGGCTTATGGCACCAACCTTCTAGTCCGCAGTGTCCATCACCATCCCACGAAGTGACCGTACGCGTTTAAGAGCGGTGCAATTGCCGGTAAGAGTCAATCCCATATAGCAGGTAAATAGGTGTCTTTCTTGCTCGATCGATTAAGTACCCGGCATCCTAAAGGTGGCAATGAACATACTCTCATGGCGTGAGAGCCGTTGCGCCGTCCACCCTCACGTCCCGACGGTGATTGTAAGTAACAGCACATCTCGATGTGAAAGCCGAGAACCACTATAAGAGGTCACTGAGGCGATTACGTTGTAGTTACGACCAATAACCAGTCTCCGCACAGAAGGCAGTGAGGCCCACTGTTAGGACCTTAACCGATGACAGAATTGATTGCTATAATCACATCGGTTCGATGTGGGTATATATTATTCATTGTTATAATCACATCGGTTCCATGTGGGTTTATTACAATCATATCGGCTCTATGTGGGTCTACAAGCACACACGTTGGAGGGTTGTGGATTCGGGACTTTACAGCGATAACATGATATCCGTGGTAGCGCAGAGATGCGAGACACATGTATCTCGTGTAGGGCCATAGCAATGGGCCCTGGTGATCGCTAAATGATATCCCCGCACCCTTTTCGGAGATATCCGTGAAATTACTCTAAGACTCCAATATCTAGCCCGTGGCAGTCCACGGTACAACGTATGCGAGGTCGGACGTGACCCTGCGACGGGTGGTACCGGTCTATATAGGAAGCGAACGACAGAGTCCTCGGAACGTAAGGCCACCGGTTGTCCTAACAGCATGCTGAGTGCGTCGCGGGCCATCGAATTGTTAATTCTCGCGCAGAGCCACTCGGTGTTGTTACCCCACACAGGAAAACATTAGCGGCAAATCTCTTGGATTAGGACAGACCTATAATCACATTGGGTCTATGTGGGTATATGAGTGTGGACATTCCAGCGGATAGCACGAAATGAATGACCCGAGTAACAGCAGTCCGGCCGGATAGAACCTTGGTGTCCTCCGCCATTGGATGCTAACTCAATCCTCGTAGCTCCGAGCTAACACGGCGACAATAACATTAGAAGGTTGCTCCTTCGTTCATATCAGTTGTGCATCCGCGCACTCTCTATAAGTATCATGTAGTCAAGCCGGGACTTTATAAAGTTTGAGACTGGACTTGGATCGCGTGCGCCATCTCTGCAGGGTACAATTGACGATTGATGGGTAGGTGTGTCTCCCCGTCCGCTGAGTTGTCTACGCATAACAAGTTGTGATCGGACCCAGCCCCGAGTGCCCTTCGCTTTTGGGAATCTCAAGGGCCGCAGGCGGACATGAATCTTGTACCGGCTTCAACGTACTAAAACACATGGCGTATGAGTCTGGTTCTTACGCAATGATGCGATCCTCAGGATGGAGCGCATGGTGTCTTGTTCCCCTTTAAAGTCTACCCTCGATGCAAAAGAGTGTTATAGAACTGAGCAAACCAAACAAGGATGCTACATATCCTCACAAAACCCAGGCAGGCAAGTGATGGGGGCGAGGGGAGCGTAAACGGTCCTTGTGAAGATGTCGAGATAGGACGGTTGCAGGCGGCAGTCACCGACCAAACTCTTTCGCCCGGTTATCCCGAGCGCCGACAATAACTGCTAAGAGCCGTTGTGTGAGATCTCCGCGTAGACCCACATGGAGCCTATGTGGTTGTACTTGTCACTGCCGATGCGAGTACTTACGGTACAGCACGTGTCAAAACCGATACGTGATTGCGGGAGGGAGGGCTCGCTTGGTGCCTAGCGTTACCAAATAGTGCTTGGGAGCGTCGGAGAGCTTGGGCTCGATGGAAGGTCCATATTCCTAGAGCCGAGTAGTCGCGAAAAGAGAGCAGCTATGACACGAATGGTAGACGAAGGTTAGACGTACATGACCAGCGATCGTCGGCCCCTACATAATAAGACGGACACTGGCATTATAACATATACCCACATGGACCCGATATGATTATACAGATTGAGTATTTCACGACTAAACTACCCTTCCATGGGAATAAACGCGGCTTCGGGTGCAGAAATATTCAGTCTACGGAATTATCGACCAGACTGGGGCGATCAAGCCTCACGAATCGTCAAGCTCGAAACAGCCGTATAACCATATCGGAAGCATGTGGGTTTACACGAGTTTCCATCCGTGCCCGCGAAGGCGGGGCCTTGCGCTATCTGAAATGAGTGGAGGTAGTGCGCGGGTGGAATGTACAGTGTACGTGAAGCTATCGGGCGATTGTGCGGACCGGGTACAGGTCGGAGTGAGCTCTCTAAGTCTCGGGGTCGTGACATGCGCCAAGCAATCACGATCACCACTGCGGGCAGACCTTGGTTATCTATACTGTACCTTCGTGCTGTTTCGTTGCTTAACTATCTATCGCCGAATTTCGCGCACCCGGTTAAAACATACCTACTTCTGCTGAATCAACCGAACTATTTCGAATTGCTGACCGATGTTCCAACCTGTCTATTAGGAGATGTATCGTTTGACTTCGCGGACTAGCAGCATTCAAGGTGGACTTTCACAACGGGTGTCTGGTTATCATGCGCCTGGTCCCTCCTGACGTGCAGAGGTGCTACGAGCCACGGTGTCACTAGACTGTTAGCACAACGCGGTACAGACTGGTCCCCCCTAACTGTTCGCGATTACTGTAGCTAGACCACTCGCCCCGTGTGTGCAGCCTGTGAGTATGTGTTTTCCCCGCTTACGCCTGATCGAGAAGGACCCGATTAGTTGGAGGGGAGCGGTACGCTGTGGTGGTCCCGTTCTCCCGTCACTGAACACATGGCGTGCCGGGCCGGACACGTATCGCTGGCCAGTATATCCAAGGGCGACGAAGTCTCCCCGCCATTAAAAGGTGCCACCCGTAGAATATGGGCGAAACGTGGACGCGAACCACGGAACTATGATCGTCATCTATACGGGAACGCCTTCTCACTGTAACAGTTCGATCTTGGCGATGACTAACAAGTTCTGAAGTCTTTTGCCCCGAATGAGCACTAGAACCCCGTGCGAGGGTACAACCACATTGGTAGCATGTGGGTTTATCTGGGACTATTGTGCCCATTGGACTAATGAGGTTCGGTTGTTTCTTAAAACCACAGTCGGTCCTTACAGAGCCCGGCGCGGGCAGGCTTTCGTTCCTGCTCTCAATGGCCAGAGTTCACTCGAACTTGACACTATATCCAGCCACCATAGCCCGCATAACGTTCGGGCTGTGATTTCTCATCGATGAACTACTAACCGGGTCGTGTCGTATAACCATATCGGCTCTATGTGGGTGTATATAATTGGGTGGCTTATATCCTACAACGTTGCTTGAACCTTTGATTCATCCAGTAGCAGGCTCTACCGGATCATCAGGTAGTGCTGCAGCTAGTACAACAAATCGTAGACATTAGACTTGCCTCAGACCGCCGTGTTTGACGCGTTGGCTGAGCCGGCCGACTCAGTCGCAGGTACGCCGCTTGCGCCAGCTCTATCACTACAGGGGCATAAACCTAGGTGAAAATACCTTTAGGGGGAGTGCGGGCAGCATCGACGCGTCGCATTACTCCCTTAGACTGTGTCGGCAGGAGAACATTTTTATTAATGATTGGACAGCCGCATCCGCAGGGGCGCAGTTCACTATTGCGCATCTAGTGCAATGACCAAAAGGCCCGCTTTATAACCACATCGGAAGTATGTGGGTTTACCTTCCGGGCGACTGACCCCCGGGCGGCAAAAATGTATCTCTTGACCGCCCGTTTGTCCCATTTGTAGGCTTAACGCGTGTGGAGTGTGTAGTATCGAAGAACGAGGCAGGGATATGTGAGACCATAACCCTCTGCCCGGAGGAACACCACAAACGCCGAAAGCGGGGAGGCACCTTCTAGTTCCTAAAGGGTAGCTGCTCGGGCGTCCGAGGTTTTACGGCGAGTGCAGACTGCACCCTTGCTATGGGTGGTCGTCGTTTTCCCAATGTTGATCAAAAGCAATCCTGATTACCTACCGGATATACGATTGCATACTCAATACTCTCTAGACGATGTGGAGAATAGACCCACATGGATCCGATATGGTTGTAACGTGGCGGTGTTAAATTAGCTTTTAGCAAAAAGCTAGTTCGGACTGTTAGAGACCGGCACTCGACGACACCCCTGACCTTTCCGCATAGGTCAAGGTACCCGTGATAATGTTTATACATGCCCCGCACGGTCCGCACGTGTAGACCCACATCGAACCTATGTGGTTATACGAAGTAAGATAACAGCTCCACGATCGAGGCAACAACACCCCAATCCTTTATCGTCTTACAATAAAACTGCGTTGATTTTAGGATCAGCACCGGCAGGCCCATTGGCGTCCCGGGCTTCTTTTCGCCTGTATGAGCGGTTCTCATCTCCTGCTTCAAAAACTCAGAATATAGCTGTCTGATTGATATTCTTATCGCCGATCCATCGGCGCGCAAGTGTTTAACAGTGCAGCTGCACTGTGGACACACCTGTTCTACTCATGCCGGGAATTTGGAATGAGAAGAAACTTACCGCACCGAAGTTTAAAGTCCTATGAAGATATGTTACAGTGTCGTGGTCAAGATTAGGTCTACATGCACAAGAGATGACGTTGTTAACTGTATAAACCTAATGAAAGAAGTTGGGCGCCGTGGTGTGCCGCTATTACGAATTGATTACTACACCCGGACTCAGACGACGTAGACCGCTGCGAAGGACGCTGCCAAAACCGACTCAATAGGCTCCACGAAATGCTTCGGTTCCCCGACGCCAGATACTCTTTCCTCGAAGCCTGTTGGTTGCCAATGTTTTTGTCCAGGGAGGCAGCTCAAGTCTCAGGTTCCACGGGCTGCCGGGCCCCCGACCGTTCCATATTTGAGAACAGCAATCTATACAACCATATCGGTAGTATGTGGGTGTACAACCAGCCCTTGCGAATGCCTGTTCCTTCTAGAGGCAATCTGCACGACGTAATTAAGTGAAGATACAGGCATTGGTTAGTCTGACACGCGACCATGTTTAGTGTATCTTGCAGCATTAACGATTTGGATTTTAACCAACACCGTATTGCTGGCTTTCTATCAGGTGAAGCCCAACGTTTCCATGTCAGCTACAAGCTTAGTTAGACTCTGCACTCCACAGTCTGGGGCTGGTTTTGATCCGAACAACGGTGCATTATGGGGGTCAGGGTTGGCCTGCAGTTAACTGGGGAGTGTCCTACCTCAAGATTAATTACATGCAGTGTGGATCCGTAACACACAAACTTGAACTTAGACATGTAAGATTAGCGACGAATGTCCATCCGAAACTTTACGCGGAGATATGTACAGCGGCGAGAAAGAAGCCTCGCCAGTGCGAATCTACGCTTAGCTGCCAACCCCATGTCTCGCTCCTCGGGTCCACCAGATACACTTTGCATTACCAATAGCTCGCAATCACTTTTATCGATGATTCTTCGTAATAAGACTTTAATTGAGTGCCAGGTAAGTAGACCGCAGACTCCGCCGTCTGTTACATCACCCACGTCTCGCTTAACAGTCCCCTCTGAGCGGTATGGATTGCATATACTCTTAACAACCTGGGAGGTCCCCCGGCCGGACAAGTAATAGGGTTGGTCAGACTAAGGTCCGCGGTCGGGGACCCCCGGTGCAAGGCCCATCGCCGTTGGCGACGGCAAACGCGCTCGATACTGGGGGGGCCTATTGAGGCCGATGAGGATGTCATAACGGCCAGAGCACAATTTATTAGGCACAATAGGGCCAATCAGATCCCAGCCAATCGGACCCACTCTTAGTACGACTGCCACCAGGGAACAGATACGCAGCTTGGTCAATGCATTCTAATGGCGGCGTGGTGGGTCTCAGTGCGTCATAAACGATCGTTTTCCCCCGCTTGGTGCAATAGAAATCCGTAGCCGAGCTAGGAACGAGGTTTTATACCAGACAGCTACCGGCGGATTATCTCACACCCGCCCTAAGTTTATCGACTAGGAAACTCTGTCTTCGACGCCGAAGTATTGGGAGTCTGCTCGTCTAGGGACCACTAATTACCATCTTACCGGTGGTCAGGACTCCGCCTTTTAGAATTGAGGAGACCGCTGTTTGCGGCGAAGACCTTAATCAACAGCCATGGTGGTGGAGCCGACGGACCGGTACAAAATGAAATCGACATTACCGCTGGGATGGCGCGCACTTAGAGTTTGCGGTGTTCTCGCGTTTGGTCATATTACGTCCCTAAGCAATAGACTGAAACCCGCCATCGCATCACGTACAGCATCCGGGACCAGTTAGTAGGAACGCTGCTGCGGTTTCGCGGCACAAAAACCGGCTTACGTGACTTCTTACTGCCTTGGCACGCAGTATCGAAAACGAAGGTGAGTATAACCATATCGGTTCCATGTGGGTTTATGGCAATGTTACAACTCGCTGCTGGTGCTATGTAATGTAACGGTCACGCGCCGCCATTAGGTCCACGCGAGGACGAGTGGACCCTTGCTGAAAGGAGTGACACTGCGTCAACGTCTAAAAATATCCACGTGCGAGGCCGTCAGCGTTCTGGCTGAGAGCGGTGAAGGAAGTAACGGGATGCAGGTAACTGTCTTTGAACGTGCTAGTTACGAGCATTAGCATTTACGCGGTGATCCTGGTCATGACAAATGGTAGTGGAATAACCCTTAGTATACCCACATACTCCCGATATGGTTATAGAAGTCCCAGGAATAGACCAATGCTCTAATAAAACCTTCCGCCTGGGCAACAGCGGTCAAATCTAACATGGGTGTCGGCGCCACTACTGCTTCGAGTTGTATGTGTGAGGGGTATACTGTGGGGGTGACTATCATCCCAACAGTTAGACAATACTAACGTTGGCGCCAGGTCCGAATCTAATAAACCATAGCTATTTAACAAGAAGGAAGGTACCCATCCCAAGGATATCAGCGACCGTGGACATTAAGGTCACAATCTCTCGAACTGACGCTCCCCCCCACGTTAAGCATACAACGGGGCGAAAAAAATCAACCCGGAGGGTGAGGTCACTGTTGTTGGCCCCTTTCGTATGCAAGGCCAGGGTGAAGCTATAACCACATCGGTTCAATGTGGGTGTATCCTGGGAGATGATGTTATCTACCATGCCTCACCAATCCTTGGGCCAAAGAGCAACTTCTTTATTTCCGTTCGGGAAAAGTTCCCCATAACGAGCAGTATATACCCACATGGAGCCGATGTGATTATAGAGTATGTGGCCCGACACTGATCAAACCAGGCCTCGTAGCCCAGTAGTACACTAAAGTAAGAGTTCTGCGCATGAGGGTAAGGTCTACCCCCCCGTTAAACAGGCTTTTCATAGGATTCCGTTGATCGACCGCCGGATTTTTTATTGCACACCGATATCTCACCTGGCTCTTTCCTCCATAATCTTGCATCGTTAGCCTCTAAGCCATATGAACGCCTTTCGATAGGCCCTACGGGTAACTCAACCATGTAGCAGTTAAGGTTTAGCAGGAGAATCTTCATGTGCGAATACGCAGCAGAAGATAGTGCTATTTAAAACACCCATAAATTCCGTCCCATATGCGATGTTCACCTTACAGGGAATGCGCACAAGAGATCACATAATTTGACGTCTCGTCGACCGCTCGGACGCTACCGAATCAGCTTGGAGGAATACCAATGAGGAGGCATGGAGAAGTAATAGAGGCGCGAAGTGGATGTTTTGAGTTACGTTGCAGTATTTCCCCAGACCACATTTCCGTCACACACCTATCGGAATTGCGCTGGCCACTGCCGTGCATTCTACAACATGATATAATCACATCGGGTCCATGTGGGTATATGTGCAATAAATGGGCTACCAAGAGCCGCATAGTGTTACGGAAAACGAAGTCATACTCCGCCAACTTTTCCAGAGCTGGCCCGGTGGCTATAAACCTAGCAGGGATACCTCGTCAGAACGCAAATAGCACCTTGGTGTAGTAAAAAACGTGCATACTCACGCTTACTTATTATCACTCTCTATCACGGAAAGAGCGTCCTAACGGTGGAGGCCTAGGCAATGTTCACACAGTCGAGAACGCGCGTAGGCGCAGCGTGTACCTCGACTCAAAGTCCGTTAGTTTCCGTGATACGACGTTGCGCGGGGTAGGGTTGCTTAAAGAACTAGCTCTGGCGATGTCATGCGCAGGCCGACAAAAGAACACTAAAGTGCCCATGGCAGACCCGAGTAGGACCAATAACCTAGCCCTGTATAAACTATCTAAAAACAATTACAGTGTAACAGACACCGTGAGGTAGACTACACTCCCGCCTGAATTAGTTATTGACACACAAACATAATAAACAGCAAGATGCGATAGGCAGGGCCATAATCTGATTTATACCGAAGTAAGGGTACATGATAGTTTTACGGTCTCGGGCACCTGTGATGTTCTAGCCTACTGTGATCATTACTAGAATACCTCTTGTCGGAAGTCTGGTAGAATGGTCTCCCTGGGTACAGATTACATTAACAAACTAATTTGGGATGGCCACTCAACTCAAGTGATATAAGTACGCGTTTCAACTGCTGAGGAAAGTCGGCTTACTCTCCTCTAGCGTTTTATTTGTACTCGAGATTGTCGTTAAGCCTTGTTACAGGAATGGCTGGGGGTGGGTTAAGAAGGACCTTTACGAACCAGGGCAAAGTGCCTTGGGCTTCGTATTCCTATAACATCCGGGACACTTGCCTCGGCACAGCCGGTGGAGCAATTTACCTAGCGTTCCGCGCCATGAACCTATAGATCGGTTAGTACCTCAGCTATGACTGTCTTTTACTGAGTATCTAGCTTATTGCCATCGGCGTTTGCTGCTGCTAGCATAAACAGAGTGACATGCCCGCAACGTAGAGCTCATAGGTAGTTATTTCCTGGGCCTTCAAAACTCTGACGTGTTGCCTCCTTCCAAAAAGCTGACCTCTAGAAATGGCCTTAATTGGTGCGGCTATATGCCTTGTCCTACTCTGCAGGCGGACCGCATTGTAGACAAGGGCATCACTGCGAACGGTATAGAACAGATTTCCGGGGACC";
    }

}
